package exo5;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;

public class BiblioJ {

        /**
         * @param args
         * @throws IOException 
         */
        public static void main(String[] args) throws IOException {
                Bibliotheque b1 = new Bibliotheque();
                BufferedReader in = null; // création d'un buffer in
                try {
                        // le bufferprend ses valeurs dans fichier.txt
                        in = new BufferedReader(new FileReader("fichier.csv"));
                        String ligne; // création d'une variable pour lire chque ligne
                        while ((ligne = in.readLine()) != null) { 
                                // tant qu'on n'a pas parcouru tout le fichier
                                StringTokenizer tok = new StringTokenizer(ligne, ";"); 
                                // tok permettra de lire les champs d'un abonné séparés par ;
                                int nt = tok.countTokens(); 
                                // prend le nombre d'abonnés

                                for (int i = 0; i < nt; i++) { 
                                        // Pour chaque abonné
                                        String nom = tok.nextToken();
                                        String adresse = tok.nextToken();
                                        Abonne abonne = new Abonne(nom, adresse, null, null); 
                                        // on crée  un abonné avec les valeur du tok
                                        b1.addAbonne(abonne); 
                                        // on ajoute l'abonné à la bibliothèque
                                        System.out.println(abonne);
                                }
                        }
                } catch (FileNotFoundException e) { 
                        // si le fichier n'est pas trouvé
                        e.printStackTrace();
                } finally { 
                        // est éxécuté qu'on soit allé dans le try ou la catch
                        try {
                                in.close(); 
                                // on ferme le buffer
                        } catch (IOException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                        }
                }
        }

}

